package com.starview.star.compiler.type;

import java.util.Map;

import com.starview.platform.data.type.IType;
import com.starview.platform.data.type.Location;
import com.starview.platform.data.type.TypeVar;
import com.starview.star.compiler.util.AccessMode;

public interface TypeNameHandler
{
  IType typeByName(String name, Location loc);

  TypeVar newTypeVar(String name, Location loc);

  void defineType(String name, TypeVar v);

  void addEntries(Map<String, TypeVar> sub);

  void removeEntries(Map<String, TypeVar> rem);

  AccessMode access();

  Map<String, TypeVar> typeVars();

  boolean suppressWarnings();
}
